package cci;

import cdp.Marca;
import cgd.MarcaDao;
import java.util.List;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;

@WebServlet(name = "MarcaCtrl", urlPatterns = {"/Marca"})
public class MarcaCtrl extends Controller {

    @Override
    protected String inserirOuAlterar(HttpServletRequest request) throws Exception {
        try {
            Marca marca;
            if (request.getParameter("id") == null) {
                marca = new Marca();
            } else {
                marca = MarcaDao.getInstance().consultar(Integer.parseInt(request.getParameter("id")));
            }

            marca.setNome(request.getParameter("nome"));
            marca.setEmail(request.getParameter("email"));

            MarcaDao.getInstance().salvar(marca);

            return "Operacao realizada com sucesso.";
        } catch (Exception e) {
            //TODO Tratar excecao
            e.printStackTrace();
            return "Erro ao realizar essa operacao.";
        }
    }

    @Override
    protected Object montar(HttpServletRequest request) throws Exception {
        Marca marca = MarcaDao.getInstance().consultar(
                Integer.parseInt(request.getParameter("id")));
        return marca;
    }

    @Override
    protected String excluir(HttpServletRequest request) throws Exception {
        Marca marca = MarcaDao.getInstance().consultar(
                Integer.parseInt(request.getParameter("id")));
        MarcaDao.getInstance().excluir(marca);
        return "Marca exluida com sucesso";
    }

    @Override
    protected Object montarLista() throws Exception {
        List<Marca> lista = MarcaDao.getInstance().obterTodos();
        return (Object) lista;
    }

    @Override
    protected String getTipoControlador() {
        return "marca";
    }

    @Override
    protected void addParametros(HttpServletRequest request) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
}
